Parallel Computing Basics